✈️ Exercise 1

a.

## Parsed with column specification:
## cols(
##   .default = col_double(),
##   FlightDate = col_date(format = ""),
##   Reporting_Airline = col_character(),
##   IATA_CODE_Reporting_Airline = col_character(),
##   Tail_Number = col_character(),
##   Origin = col_character(),
##   OriginCityName = col_character(),
##   OriginState = col_character(),
##   OriginStateFips = col_character(),
##   OriginStateName = col_character(),
##   Dest = col_character(),
##   DestCityName = col_character(),
##   DestState = col_character(),
##   DestStateFips = col_character(),
##   DestStateName = col_character(),
##   CRSDepTime = col_character(),
##   DepTime = col_character(),
##   DepTimeBlk = col_character(),
##   WheelsOff = col_character(),
##   WheelsOn = col_character(),
##   CRSArrTime = col_character()
##   # ... with 40 more columns
## )
## See spec(...) for full column specifications.

Paragraph…

b.

## Parsed with column specification:
## cols(
##   .default = col_double(),
##   AIRPORT = col_character(),
##   DISPLAY_AIRPORT_NAME = col_character(),
##   DISPLAY_AIRPORT_CITY_NAME_FULL = col_character(),
##   AIRPORT_COUNTRY_NAME = col_character(),
##   AIRPORT_COUNTRY_CODE_ISO = col_character(),
##   AIRPORT_STATE_NAME = col_character(),
##   AIRPORT_STATE_CODE = col_character(),
##   AIRPORT_STATE_FIPS = col_character(),
##   DISPLAY_CITY_MARKET_NAME_FULL = col_character(),
##   LAT_HEMISPHERE = col_character(),
##   LON_HEMISPHERE = col_character(),
##   AIRPORT_START_DATE = col_date(format = ""),
##   AIRPORT_THRU_DATE = col_date(format = ""),
##   X33 = col_logical()
## )
## See spec(...) for full column specifications.

c. 

## Source : http://tile.stamen.com/terrain/4/2/5.png
## Source : http://tile.stamen.com/terrain/4/3/5.png
## Source : http://tile.stamen.com/terrain/4/4/5.png
## Source : http://tile.stamen.com/terrain/4/5/5.png
## Source : http://tile.stamen.com/terrain/4/2/6.png
## Source : http://tile.stamen.com/terrain/4/3/6.png
## Source : http://tile.stamen.com/terrain/4/4/6.png
## Source : http://tile.stamen.com/terrain/4/5/6.png
## Source : http://tile.stamen.com/terrain/4/2/7.png
## Source : http://tile.stamen.com/terrain/4/3/7.png
## Source : http://tile.stamen.com/terrain/4/4/7.png
## Source : http://tile.stamen.com/terrain/4/5/7.png

✈️ Exercise 2

a.

Flights-after normalise as NY Time
Origin_DateTime_NY Dest_DateTime_NY Tail_Number Origin Dest
2020-02-01 20:35:00 2020-02-01 22:46:00 N231JB ATL BOS
2020-02-01 20:48:00 2020-02-01 23:20:00 N309JB BOS ATL
2020-02-01 10:38:00 2020-02-01 12:52:00 N284JB ATL BOS
2020-02-01 06:01:00 2020-02-01 07:56:00 N632JB ATL FLL
2020-02-01 10:46:00 2020-02-01 12:31:00 N547JB FLL ATL
2020-02-01 07:22:00 2020-02-01 10:02:00 N637JB JFK ATL

b.

## # A tibble: 6,580 x 2
## # Groups:   Tail_Number [2,422]
##    Tail_Number DayofMonth
##    <chr>            <dbl>
##  1 N101DQ              24
##  2 N101HQ               1
##  3 N101HQ               2
##  4 N102HQ              12
##  5 N102HQ              29
##  6 N103HQ               7
##  7 N103HQ              11
##  8 N105DU              21
##  9 N106HQ              22
## 10 N107SY              22
## # ... with 6,570 more rows

## List of 93
##  $ line                      :List of 6
##   ..$ colour       : chr "black"
##   ..$ size         : num 0.409
##   ..$ linetype     : num 1
##   ..$ lineend      : chr "butt"
##   ..$ arrow        : logi FALSE
##   ..$ inherit.blank: logi TRUE
##   ..- attr(*, "class")= chr [1:2] "element_line" "element"
##  $ rect                      :List of 5
##   ..$ fill         : chr "white"
##   ..$ colour       : chr "black"
##   ..$ size         : num 0.409
##   ..$ linetype     : num 1
##   ..$ inherit.blank: logi TRUE
##   ..- attr(*, "class")= chr [1:2] "element_rect" "element"
##  $ text                      :List of 11
##   ..$ family       : chr ""
##   ..$ face         : chr "plain"
##   ..$ colour       : chr "black"
##   ..$ size         : num 9
##   ..$ hjust        : num 0.5
##   ..$ vjust        : num 0.5
##   ..$ angle        : num 0
##   ..$ lineheight   : num 0.9
##   ..$ margin       : 'margin' num [1:4] 0pt 0pt 0pt 0pt
##   .. ..- attr(*, "valid.unit")= int 8
##   .. ..- attr(*, "unit")= chr "pt"
##   ..$ debug        : logi FALSE
##   ..$ inherit.blank: logi TRUE
##   ..- attr(*, "class")= chr [1:2] "element_text" "element"
##  $ title                     : NULL
##  $ aspect.ratio              : NULL
##  $ axis.title                : list()
##   ..- attr(*, "class")= chr [1:2] "element_blank" "element"
##  $ axis.title.x              :List of 11
##   ..$ family       : NULL
##   ..$ face         : NULL
##   ..$ colour       : NULL
##   ..$ size         : NULL
##   ..$ hjust        : NULL
##   ..$ vjust        : num 1
##   ..$ angle        : NULL
##   ..$ lineheight   : NULL
##   ..$ margin       : 'margin' num [1:4] 2.25pt 0pt 0pt 0pt
##   .. ..- attr(*, "valid.unit")= int 8
##   .. ..- attr(*, "unit")= chr "pt"
##   ..$ debug        : NULL
##   ..$ inherit.blank: logi TRUE
##   ..- attr(*, "class")= chr [1:2] "element_text" "element"
##  $ axis.title.x.top          :List of 11
##   ..$ family       : NULL
##   ..$ face         : NULL
##   ..$ colour       : NULL
##   ..$ size         : NULL
##   ..$ hjust        : NULL
##   ..$ vjust        : num 0
##   ..$ angle        : NULL
##   ..$ lineheight   : NULL
##   ..$ margin       : 'margin' num [1:4] 0pt 0pt 2.25pt 0pt
##   .. ..- attr(*, "valid.unit")= int 8
##   .. ..- attr(*, "unit")= chr "pt"
##   ..$ debug        : NULL
##   ..$ inherit.blank: logi TRUE
##   ..- attr(*, "class")= chr [1:2] "element_text" "element"
##  $ axis.title.x.bottom       : NULL
##  $ axis.title.y              :List of 11
##   ..$ family       : NULL
##   ..$ face         : NULL
##   ..$ colour       : NULL
##   ..$ size         : NULL
##   ..$ hjust        : NULL
##   ..$ vjust        : num 1
##   ..$ angle        : num 90
##   ..$ lineheight   : NULL
##   ..$ margin       : 'margin' num [1:4] 0pt 2.25pt 0pt 0pt
##   .. ..- attr(*, "valid.unit")= int 8
##   .. ..- attr(*, "unit")= chr "pt"
##   ..$ debug        : NULL
##   ..$ inherit.blank: logi TRUE
##   ..- attr(*, "class")= chr [1:2] "element_text" "element"
##  $ axis.title.y.left         : NULL
##  $ axis.title.y.right        :List of 11
##   ..$ family       : NULL
##   ..$ face         : NULL
##   ..$ colour       : NULL
##   ..$ size         : NULL
##   ..$ hjust        : NULL
##   ..$ vjust        : num 0
##   ..$ angle        : num -90
##   ..$ lineheight   : NULL
##   ..$ margin       : 'margin' num [1:4] 0pt 0pt 0pt 2.25pt
##   .. ..- attr(*, "valid.unit")= int 8
##   .. ..- attr(*, "unit")= chr "pt"
##   ..$ debug        : NULL
##   ..$ inherit.blank: logi TRUE
##   ..- attr(*, "class")= chr [1:2] "element_text" "element"
##  $ axis.text                 : list()
##   ..- attr(*, "class")= chr [1:2] "element_blank" "element"
##  $ axis.text.x               :List of 11
##   ..$ family       : NULL
##   ..$ face         : NULL
##   ..$ colour       : NULL
##   ..$ size         : NULL
##   ..$ hjust        : NULL
##   ..$ vjust        : num 1
##   ..$ angle        : NULL
##   ..$ lineheight   : NULL
##   ..$ margin       : 'margin' num [1:4] 1.8pt 0pt 0pt 0pt
##   .. ..- attr(*, "valid.unit")= int 8
##   .. ..- attr(*, "unit")= chr "pt"
##   ..$ debug        : NULL
##   ..$ inherit.blank: logi TRUE
##   ..- attr(*, "class")= chr [1:2] "element_text" "element"
##  $ axis.text.x.top           :List of 11
##   ..$ family       : NULL
##   ..$ face         : NULL
##   ..$ colour       : NULL
##   ..$ size         : NULL
##   ..$ hjust        : NULL
##   ..$ vjust        : num 0
##   ..$ angle        : NULL
##   ..$ lineheight   : NULL
##   ..$ margin       : 'margin' num [1:4] 0pt 0pt 1.8pt 0pt
##   .. ..- attr(*, "valid.unit")= int 8
##   .. ..- attr(*, "unit")= chr "pt"
##   ..$ debug        : NULL
##   ..$ inherit.blank: logi TRUE
##   ..- attr(*, "class")= chr [1:2] "element_text" "element"
##  $ axis.text.x.bottom        : NULL
##  $ axis.text.y               :List of 11
##   ..$ family       : NULL
##   ..$ face         : NULL
##   ..$ colour       : NULL
##   ..$ size         : NULL
##   ..$ hjust        : num 1
##   ..$ vjust        : NULL
##   ..$ angle        : NULL
##   ..$ lineheight   : NULL
##   ..$ margin       : 'margin' num [1:4] 0pt 1.8pt 0pt 0pt
##   .. ..- attr(*, "valid.unit")= int 8
##   .. ..- attr(*, "unit")= chr "pt"
##   ..$ debug        : NULL
##   ..$ inherit.blank: logi TRUE
##   ..- attr(*, "class")= chr [1:2] "element_text" "element"
##  $ axis.text.y.left          : NULL
##  $ axis.text.y.right         :List of 11
##   ..$ family       : NULL
##   ..$ face         : NULL
##   ..$ colour       : NULL
##   ..$ size         : NULL
##   ..$ hjust        : num 0
##   ..$ vjust        : NULL
##   ..$ angle        : NULL
##   ..$ lineheight   : NULL
##   ..$ margin       : 'margin' num [1:4] 0pt 0pt 0pt 1.8pt
##   .. ..- attr(*, "valid.unit")= int 8
##   .. ..- attr(*, "unit")= chr "pt"
##   ..$ debug        : NULL
##   ..$ inherit.blank: logi TRUE
##   ..- attr(*, "class")= chr [1:2] "element_text" "element"
##  $ axis.ticks                : list()
##   ..- attr(*, "class")= chr [1:2] "element_blank" "element"
##  $ axis.ticks.x              : NULL
##  $ axis.ticks.x.top          : NULL
##  $ axis.ticks.x.bottom       : NULL
##  $ axis.ticks.y              : NULL
##  $ axis.ticks.y.left         : NULL
##  $ axis.ticks.y.right        : NULL
##  $ axis.ticks.length         : 'unit' num 2.25pt
##   ..- attr(*, "valid.unit")= int 8
##   ..- attr(*, "unit")= chr "pt"
##  $ axis.ticks.length.x       : NULL
##  $ axis.ticks.length.x.top   : NULL
##  $ axis.ticks.length.x.bottom: NULL
##  $ axis.ticks.length.y       : NULL
##  $ axis.ticks.length.y.left  : NULL
##  $ axis.ticks.length.y.right : NULL
##  $ axis.line                 : list()
##   ..- attr(*, "class")= chr [1:2] "element_blank" "element"
##  $ axis.line.x               : NULL
##  $ axis.line.x.top           : NULL
##  $ axis.line.x.bottom        : NULL
##  $ axis.line.y               : NULL
##  $ axis.line.y.left          : NULL
##  $ axis.line.y.right         : NULL
##  $ legend.background         :List of 5
##   ..$ fill         : NULL
##   ..$ colour       : logi NA
##   ..$ size         : NULL
##   ..$ linetype     : NULL
##   ..$ inherit.blank: logi TRUE
##   ..- attr(*, "class")= chr [1:2] "element_rect" "element"
##  $ legend.margin             : 'margin' num [1:4] 4.5pt 4.5pt 4.5pt 4.5pt
##   ..- attr(*, "valid.unit")= int 8
##   ..- attr(*, "unit")= chr "pt"
##  $ legend.spacing            : 'unit' num 9pt
##   ..- attr(*, "valid.unit")= int 8
##   ..- attr(*, "unit")= chr "pt"
##  $ legend.spacing.x          : NULL
##  $ legend.spacing.y          : NULL
##  $ legend.key                :List of 5
##   ..$ fill         : chr "white"
##   ..$ colour       : logi NA
##   ..$ size         : NULL
##   ..$ linetype     : NULL
##   ..$ inherit.blank: logi TRUE
##   ..- attr(*, "class")= chr [1:2] "element_rect" "element"
##  $ legend.key.size           : 'unit' num 1.2lines
##   ..- attr(*, "valid.unit")= int 3
##   ..- attr(*, "unit")= chr "lines"
##  $ legend.key.height         : NULL
##  $ legend.key.width          : NULL
##  $ legend.text               :List of 11
##   ..$ family       : NULL
##   ..$ face         : NULL
##   ..$ colour       : NULL
##   ..$ size         : 'rel' num 0.8
##   ..$ hjust        : NULL
##   ..$ vjust        : NULL
##   ..$ angle        : NULL
##   ..$ lineheight   : NULL
##   ..$ margin       : NULL
##   ..$ debug        : NULL
##   ..$ inherit.blank: logi TRUE
##   ..- attr(*, "class")= chr [1:2] "element_text" "element"
##  $ legend.text.align         : NULL
##  $ legend.title              :List of 11
##   ..$ family       : NULL
##   ..$ face         : NULL
##   ..$ colour       : NULL
##   ..$ size         : NULL
##   ..$ hjust        : num 0
##   ..$ vjust        : NULL
##   ..$ angle        : NULL
##   ..$ lineheight   : NULL
##   ..$ margin       : NULL
##   ..$ debug        : NULL
##   ..$ inherit.blank: logi TRUE
##   ..- attr(*, "class")= chr [1:2] "element_text" "element"
##  $ legend.title.align        : NULL
##  $ legend.position           : num [1:2] 0 0
##  $ legend.direction          : NULL
##  $ legend.justification      : num [1:2] 0 0
##  $ legend.box                : NULL
##  $ legend.box.just           : NULL
##  $ legend.box.margin         : 'margin' num [1:4] 0cm 0cm 0cm 0cm
##   ..- attr(*, "valid.unit")= int 1
##   ..- attr(*, "unit")= chr "cm"
##  $ legend.box.background     : list()
##   ..- attr(*, "class")= chr [1:2] "element_blank" "element"
##  $ legend.box.spacing        : 'unit' num 9pt
##   ..- attr(*, "valid.unit")= int 8
##   ..- attr(*, "unit")= chr "pt"
##  $ panel.background          : list()
##   ..- attr(*, "class")= chr [1:2] "element_blank" "element"
##  $ panel.border              : list()
##   ..- attr(*, "class")= chr [1:2] "element_blank" "element"
##  $ panel.spacing             : 'unit' num 0lines
##   ..- attr(*, "valid.unit")= int 3
##   ..- attr(*, "unit")= chr "lines"
##  $ panel.spacing.x           : NULL
##  $ panel.spacing.y           : NULL
##  $ panel.grid                : list()
##   ..- attr(*, "class")= chr [1:2] "element_blank" "element"
##  $ panel.grid.major          : NULL
##  $ panel.grid.minor          :List of 6
##   ..$ colour       : NULL
##   ..$ size         : 'rel' num 0.5
##   ..$ linetype     : NULL
##   ..$ lineend      : NULL
##   ..$ arrow        : logi FALSE
##   ..$ inherit.blank: logi TRUE
##   ..- attr(*, "class")= chr [1:2] "element_line" "element"
##  $ panel.grid.major.x        : NULL
##  $ panel.grid.major.y        : NULL
##  $ panel.grid.minor.x        : NULL
##  $ panel.grid.minor.y        : NULL
##  $ panel.ontop               : logi FALSE
##  $ plot.background           : list()
##   ..- attr(*, "class")= chr [1:2] "element_blank" "element"
##  $ plot.title                :List of 11
##   ..$ family       : NULL
##   ..$ face         : NULL
##   ..$ colour       : NULL
##   ..$ size         : 'rel' num 1.2
##   ..$ hjust        : num 0
##   ..$ vjust        : num 1
##   ..$ angle        : NULL
##   ..$ lineheight   : NULL
##   ..$ margin       : 'margin' num [1:4] 0pt 0pt 4.5pt 0pt
##   .. ..- attr(*, "valid.unit")= int 8
##   .. ..- attr(*, "unit")= chr "pt"
##   ..$ debug        : NULL
##   ..$ inherit.blank: logi TRUE
##   ..- attr(*, "class")= chr [1:2] "element_text" "element"
##  $ plot.title.position       : chr "panel"
##  $ plot.subtitle             :List of 11
##   ..$ family       : NULL
##   ..$ face         : NULL
##   ..$ colour       : NULL
##   ..$ size         : NULL
##   ..$ hjust        : num 0
##   ..$ vjust        : num 1
##   ..$ angle        : NULL
##   ..$ lineheight   : NULL
##   ..$ margin       : 'margin' num [1:4] 0pt 0pt 4.5pt 0pt
##   .. ..- attr(*, "valid.unit")= int 8
##   .. ..- attr(*, "unit")= chr "pt"
##   ..$ debug        : NULL
##   ..$ inherit.blank: logi TRUE
##   ..- attr(*, "class")= chr [1:2] "element_text" "element"
##  $ plot.caption              :List of 11
##   ..$ family       : NULL
##   ..$ face         : NULL
##   ..$ colour       : NULL
##   ..$ size         : 'rel' num 0.8
##   ..$ hjust        : num 1
##   ..$ vjust        : num 1
##   ..$ angle        : NULL
##   ..$ lineheight   : NULL
##   ..$ margin       : 'margin' num [1:4] 4.5pt 0pt 0pt 0pt
##   .. ..- attr(*, "valid.unit")= int 8
##   .. ..- attr(*, "unit")= chr "pt"
##   ..$ debug        : NULL
##   ..$ inherit.blank: logi TRUE
##   ..- attr(*, "class")= chr [1:2] "element_text" "element"
##  $ plot.caption.position     : chr "panel"
##  $ plot.tag                  :List of 11
##   ..$ family       : NULL
##   ..$ face         : NULL
##   ..$ colour       : NULL
##   ..$ size         : 'rel' num 1.2
##   ..$ hjust        : num 0.5
##   ..$ vjust        : num 0.5
##   ..$ angle        : NULL
##   ..$ lineheight   : NULL
##   ..$ margin       : NULL
##   ..$ debug        : NULL
##   ..$ inherit.blank: logi TRUE
##   ..- attr(*, "class")= chr [1:2] "element_text" "element"
##  $ plot.tag.position         : chr "topleft"
##  $ plot.margin               : 'margin' num [1:4] 4.5pt 4.5pt 4.5pt 4.5pt
##   ..- attr(*, "valid.unit")= int 8
##   ..- attr(*, "unit")= chr "pt"
##  $ strip.background          :List of 5
##   ..$ fill         : chr "grey85"
##   ..$ colour       : chr "grey20"
##   ..$ size         : NULL
##   ..$ linetype     : NULL
##   ..$ inherit.blank: logi TRUE
##   ..- attr(*, "class")= chr [1:2] "element_rect" "element"
##  $ strip.background.x        : NULL
##  $ strip.background.y        : NULL
##  $ strip.placement           : chr "inside"
##  $ strip.text                :List of 11
##   ..$ family       : NULL
##   ..$ face         : NULL
##   ..$ colour       : chr "grey10"
##   ..$ size         : 'rel' num 0.8
##   ..$ hjust        : NULL
##   ..$ vjust        : NULL
##   ..$ angle        : NULL
##   ..$ lineheight   : NULL
##   ..$ margin       : 'margin' num [1:4] 3.6pt 3.6pt 3.6pt 3.6pt
##   .. ..- attr(*, "valid.unit")= int 8
##   .. ..- attr(*, "unit")= chr "pt"
##   ..$ debug        : NULL
##   ..$ inherit.blank: logi TRUE
##   ..- attr(*, "class")= chr [1:2] "element_text" "element"
##  $ strip.text.x              : NULL
##  $ strip.text.y              :List of 11
##   ..$ family       : NULL
##   ..$ face         : NULL
##   ..$ colour       : NULL
##   ..$ size         : NULL
##   ..$ hjust        : NULL
##   ..$ vjust        : NULL
##   ..$ angle        : num -90
##   ..$ lineheight   : NULL
##   ..$ margin       : NULL
##   ..$ debug        : NULL
##   ..$ inherit.blank: logi TRUE
##   ..- attr(*, "class")= chr [1:2] "element_text" "element"
##  $ strip.switch.pad.grid     : 'unit' num 2.25pt
##   ..- attr(*, "valid.unit")= int 8
##   ..- attr(*, "unit")= chr "pt"
##  $ strip.switch.pad.wrap     : 'unit' num 2.25pt
##   ..- attr(*, "valid.unit")= int 8
##   ..- attr(*, "unit")= chr "pt"
##  $ strip.text.y.left         :List of 11
##   ..$ family       : NULL
##   ..$ face         : NULL
##   ..$ colour       : NULL
##   ..$ size         : NULL
##   ..$ hjust        : NULL
##   ..$ vjust        : NULL
##   ..$ angle        : num 90
##   ..$ lineheight   : NULL
##   ..$ margin       : NULL
##   ..$ debug        : NULL
##   ..$ inherit.blank: logi TRUE
##   ..- attr(*, "class")= chr [1:2] "element_text" "element"
##  - attr(*, "class")= chr [1:2] "theme" "gg"
##  - attr(*, "complete")= logi TRUE
##  - attr(*, "validate")= logi TRUE

c. 

## # A tibble: 2 x 11
##   Origin_lon Origin_lat Dest_lon Dest_lat Dep_DateTime        Arr_DateTime
##        <dbl>      <dbl>    <dbl>    <dbl> <dttm>              <chr>       
## 1      -76.7       39.2    -84.4     33.6 2020-02-24 18:42:00 2020-02-24 ~
## 2      -84.4       33.6    -82.9     40.0 2020-02-24 22:06:00 2020-02-24 ~
## # ... with 5 more variables: AirTime_inter <dbl>, lon_inter <dbl>,
## #   lat_inter <dbl>, lon_incre <dbl>, lat_incre <dbl>
## New names:
## * value -> value...1
## * value -> value...2
## New names:
## * value -> value...1
## * value -> value...2

d. 

### test

## # A tibble: 2 x 8
##   DepTime AirTime Origin_lon Origin_lat Dest_lon Dest_lat lon_incre lat_incre
##   <chr>     <dbl>      <dbl>      <dbl>    <dbl>    <dbl>     <dbl>     <dbl>
## 1 2206         67      -84.4       33.6    -82.9     40.0     0.344     1.42 
## 2 1842        103      -76.7       39.2    -84.4     33.6    -1.13     -0.807

e.

## # A tibble: 14 x 122
##     Year Quarter Month DayofMonth DayOfWeek FlightDate Reporting_Airli~
##    <dbl>   <dbl> <dbl>      <dbl>     <dbl> <date>     <chr>           
##  1  2020       1     2         24         1 2020-02-24 B6              
##  2  2020       1     2         24         1 2020-02-24 B6              
##  3  2020       1     2         24         1 2020-02-24 B6              
##  4  2020       1     2         24         1 2020-02-24 B6              
##  5  2020       1     2         24         1 2020-02-24 B6              
##  6  2020       1     2         24         1 2020-02-24 B6              
##  7  2020       1     2         24         1 2020-02-24 B6              
##  8  2020       1     2         24         1 2020-02-24 B6              
##  9  2020       1     2         24         1 2020-02-24 B6              
## 10  2020       1     2         24         1 2020-02-24 B6              
## 11  2020       1     2         24         1 2020-02-24 B6              
## 12  2020       1     2         24         1 2020-02-24 B6              
## 13  2020       1     2         24         1 2020-02-24 B6              
## 14  2020       1     2         24         1 2020-02-24 B6              
## # ... with 115 more variables: DOT_ID_Reporting_Airline <dbl>,
## #   IATA_CODE_Reporting_Airline <chr>, Tail_Number <chr>,
## #   Flight_Number_Reporting_Airline <dbl>, OriginAirportID <dbl>,
## #   OriginAirportSeqID <dbl>, OriginCityMarketID <dbl>, Origin <chr>,
## #   OriginCityName <chr>, OriginState <chr>, OriginStateFips <chr>,
## #   OriginStateName <chr>, OriginWac <dbl>, DestAirportID <dbl>,
## #   DestAirportSeqID <dbl>, DestCityMarketID <dbl>, Dest <chr>,
## #   DestCityName <chr>, DestState <chr>, DestStateFips <chr>,
## #   DestStateName <chr>, DestWac <dbl>, CRSDepTime <chr>, DepTime <chr>,
## #   DepDelay <dbl>, DepDelayMinutes <dbl>, DepDel15 <dbl>,
## #   DepartureDelayGroups <dbl>, DepTimeBlk <chr>, TaxiOut <dbl>,
## #   WheelsOff <chr>, WheelsOn <chr>, TaxiIn <dbl>, CRSArrTime <chr>,
## #   ArrTime <chr>, ArrDelay <dbl>, ArrDelayMinutes <dbl>, ArrDel15 <dbl>,
## #   ArrivalDelayGroups <dbl>, ArrTimeBlk <chr>, Cancelled <dbl>,
## #   CancellationCode <chr>, Diverted <dbl>, CRSElapsedTime <dbl>,
## #   ActualElapsedTime <dbl>, AirTime <dbl>, Flights <dbl>, Distance <dbl>,
## #   DistanceGroup <dbl>, CarrierDelay <dbl>, WeatherDelay <dbl>,
## #   NASDelay <dbl>, SecurityDelay <dbl>, LateAircraftDelay <dbl>,
## #   FirstDepTime <chr>, TotalAddGTime <dbl>, LongestAddGTime <dbl>,
## #   DivAirportLandings <dbl>, DivReachedDest <dbl>, DivActualElapsedTime <dbl>,
## #   DivArrDelay <dbl>, DivDistance <dbl>, Div1Airport <chr>,
## #   Div1AirportID <dbl>, Div1AirportSeqID <dbl>, Div1WheelsOn <chr>,
## #   Div1TotalGTime <dbl>, Div1LongestGTime <dbl>, Div1WheelsOff <dbl>,
## #   Div1TailNum <chr>, Div2Airport <lgl>, Div2AirportID <lgl>,
## #   Div2AirportSeqID <lgl>, Div2WheelsOn <lgl>, Div2TotalGTime <lgl>,
## #   Div2LongestGTime <lgl>, Div2WheelsOff <lgl>, Div2TailNum <lgl>,
## #   Div3Airport <lgl>, Div3AirportID <lgl>, Div3AirportSeqID <lgl>,
## #   Div3WheelsOn <lgl>, Div3TotalGTime <lgl>, Div3LongestGTime <lgl>,
## #   Div3WheelsOff <lgl>, Div3TailNum <lgl>, Div4Airport <lgl>,
## #   Div4AirportID <lgl>, Div4AirportSeqID <lgl>, Div4WheelsOn <lgl>,
## #   Div4TotalGTime <lgl>, Div4LongestGTime <lgl>, Div4WheelsOff <lgl>,
## #   Div4TailNum <lgl>, Div5Airport <lgl>, Div5AirportID <lgl>,
## #   Div5AirportSeqID <lgl>, Div5WheelsOn <lgl>, Div5TotalGTime <lgl>,
## #   Div5LongestGTime <lgl>, ...

Here is one way to make an animation.

✈️ Exercise 3

## Parsed with column specification:
## cols(
##   .default = col_double(),
##   FlightDate = col_date(format = ""),
##   Reporting_Airline = col_character(),
##   IATA_CODE_Reporting_Airline = col_character(),
##   Tail_Number = col_character(),
##   Origin = col_character(),
##   OriginCityName = col_character(),
##   OriginState = col_character(),
##   OriginStateFips = col_character(),
##   OriginStateName = col_character(),
##   Dest = col_character(),
##   DestCityName = col_character(),
##   DestState = col_character(),
##   DestStateFips = col_character(),
##   DestStateName = col_character(),
##   CRSDepTime = col_character(),
##   DepTime = col_character(),
##   DepTimeBlk = col_character(),
##   WheelsOff = col_character(),
##   WheelsOn = col_character(),
##   CRSArrTime = col_character()
##   # ... with 40 more columns
## )
## See spec(...) for full column specifications.
## Parsed with column specification:
## cols(
##   `Airline ID` = col_double(),
##   Name = col_character(),
##   Alias = col_character(),
##   IATA = col_character(),
##   ICAO = col_character(),
##   Callsign = col_character(),
##   Country = col_character(),
##   Active = col_character()
## )
## Parsed with column specification:
## cols(
##   `Airport ID` = col_double(),
##   Name = col_character(),
##   City = col_character(),
##   Country = col_character(),
##   IATA = col_character(),
##   ICAO = col_character(),
##   Latitude = col_double(),
##   Longitude = col_double(),
##   Altitude = col_double(),
##   Timezone = col_double(),
##   DST = col_character(),
##   `Tz database time zone` = col_character(),
##   Type = col_character(),
##   Source = col_character()
## )
## Parsed with column specification:
## cols(
##   .default = col_character(),
##   `YEAR MFR` = col_double(),
##   `TYPE REGISTRANT` = col_double(),
##   `LAST ACTION DATE` = col_double(),
##   `CERT ISSUE DATE` = col_double(),
##   `TYPE AIRCRAFT` = col_double(),
##   `TYPE ENGINE` = col_double(),
##   `MODE S CODE` = col_double(),
##   `AIR WORTH DATE` = col_double(),
##   `EXPIRATION DATE` = col_double(),
##   X35 = col_logical()
## )
## See spec(...) for full column specifications.
## Parsed with column specification:
## cols(
##   CODE = col_character(),
##   MFR = col_character(),
##   MODEL = col_character(),
##   TYPE = col_double(),
##   HORSEPOWER = col_character(),
##   THRUST = col_character(),
##   X7 = col_logical()
## )
## Parsed with column specification:
## cols(
##   CODE = col_character(),
##   MFR = col_character(),
##   MODEL = col_character(),
##   `TYPE-ACFT` = col_double(),
##   `TYPE-ENG` = col_double(),
##   `AC-CAT` = col_double(),
##   `BUILD-CERT-IND` = col_double(),
##   `NO-ENG` = col_character(),
##   `NO-SEATS` = col_character(),
##   `AC-WEIGHT` = col_character(),
##   SPEED = col_character(),
##   X12 = col_logical()
## )
## Parsed with column specification:
## cols(
##   .default = col_character(),
##   valid = col_datetime(format = ""),
##   lon = col_double(),
##   lat = col_double(),
##   alti = col_double(),
##   vsby = col_double()
## )
## See spec(...) for full column specifications.
## Loading required package: xml2
## 
## Attaching package: 'rvest'
## The following object is masked from 'package:purrr':
## 
##     pluck
## The following object is masked from 'package:readr':
## 
##     guess_encoding
## # A tibble: 1 x 6
##   faa      pop mayor            area zip                                  fip   
##   <chr>  <dbl> <chr>           <dbl> <chr>                                <chr> 
## 1 ATL   506811 Keisha Lance B~  8376 30060, 30301–30322, 30324–30334, 30~ 13-04~

✈️ Exercise 4

References

Cite the main sources for your work, including R packages used.